package les.portal.negocio.to;

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

import les.portal.util.TipoFinalizado;

public class SubestadoFinalizadoTO implements Comparable<SubestadoFinalizadoTO> {
		
	private Integer id;
	private TipoFinalizado estadoFinalizado;
	private String comentario;
	private Date data;
	private EstadoFinalizadoTO estadoProjeto;
	
	
	/**
	 * @return Returns the comentario.
	 */
	public String getComentario() {
		return comentario;
	}
	/**
	 * @param comentario The comentario to set.
	 */
	public void setComentario(String comentario) {
		this.comentario = comentario;
	}
	/**
	 * @return Returns the data.
	 */
	public Date getData() {
		return data;
	}
	
	public String getDataString() {
		
		GregorianCalendar calendar = new GregorianCalendar();
		calendar.setTime(this.data);
		
		return calendar.get(Calendar.DAY_OF_MONTH) + "/" +
			   (calendar.get(Calendar.MONTH) + 1) + "/" +
			   calendar.get(Calendar.YEAR);
	}
	
	/**
	 * @param data The data to set.
	 */
	public void setData(Date data) {
		this.data = data;
	}
		
	/**
	 * @return Returns the finalizado.
	 */
	public String getEstadoFinalizado() {
		return estadoFinalizado.toString();
	}
	/**
	 * @param finalizado The finalizado to set.
	 */
	public void setEstadoFinalizado(String finalizado) {
		this.estadoFinalizado = TipoFinalizado.valueOf(finalizado);
	}
	/**
	 * @return Returns the id.
	 */
	public Integer getId() {
		return id;
	}
	/**
	 * @param id The id to set.
	 */
	public void setId(Integer id) {
		this.id = id;
	}
	
	public void setEstadoFinalizadoEnum(TipoFinalizado estadoFinalizado) {
		this.estadoFinalizado = estadoFinalizado; 
	}
	
	public TipoFinalizado getEstadoFinalizadoEnum() {
		return this.estadoFinalizado;
	}

	/**
	 * @return Returns the estadoProjeto.
	 */
	public EstadoFinalizadoTO getEstadoProjeto() {
		return estadoProjeto;
	}
	/**
	 * @param estadoProjeto The estadoProjeto to set.
	 */
	public void setEstadoProjeto(EstadoFinalizadoTO estadoProjeto) {
		this.estadoProjeto = estadoProjeto;
	}
	
	public int compareTo(SubestadoFinalizadoTO outro) {
		return this.data.compareTo(outro.data);
	}
}